package ar.edu.unlp.info.dssd.acciones;

import java.util.Date;
import java.util.Map;

import org.apache.struts2.interceptor.ApplicationAware;
import org.apache.struts2.interceptor.ServletRequestAware;
import org.apache.struts2.interceptor.SessionAware;

import ar.edu.unlp.info.dssd.modelo.Conductor;
import ar.edu.unlp.info.dssd.servicios.ConductorService;

import com.opensymphony.xwork2.ActionSupport;

public class RegistrarAccion extends AbstractAccion {

	private static final long serialVersionUID = -3366719829719763681L;

	private ConductorService conductorService;

    public ConductorService getConductorService() {
		return conductorService;
	}

	public void setConductorService(ConductorService conductorService) {
		this.conductorService = conductorService;
	}

    //TODO validar que no exista un usuario con ese dni
	//TODO guardar la fecha de nacimiento que se pasa como parametro
	public String execute() throws Exception {
		Date fechaNacimiento = new Date();
		Conductor conductor = new Conductor(this.getNombre(), this.getApellido(), fechaNacimiento,this.getDni());
        this.getConductorService().registrar(conductor);
        this.getSession().put("conductor", conductor);
        return SUCCESS;
        /**
	    if(!getUsername().equals("Admin") || !getPassword().equals("Admin")){
	            addActionError("Invalid user name or password! Please try again!");
	            return ERROR;
	    }else{
	      return SUCCESS;
	    }
	    */
  }

	private String nombre = null;
	private String apellido = null;
	private String password = null;
	private String dni = null;
	private String fechaNacimiento = null;
	private String domicilio = null;
	
	public String getNombre() {
		return nombre;
	}

	public void setNombre(String nombre) {
		this.nombre = nombre;
	}

	public String getApellido() {
		return apellido;
	}

	public void setApellido(String apellido) {
		this.apellido = apellido;
	}

	public String getPassword() {
		return password;
	}

	public void setPassword(String password) {
		this.password = password;
	}

	public String getDni() {
		return dni;
	}

	public void setDni(String dni) {
		this.dni = dni;
	}

	public String getFechaNacimiento() {
		return fechaNacimiento;
	}

	public void setFechaNacimiento(String fechaNacimiento) {
		this.fechaNacimiento = fechaNacimiento;
	}

	public String getDomicilio() {
		return domicilio;
	}

	public void setDomicilio(String domicilio) {
		this.domicilio = domicilio;
	}

}
